package com.hyt.it.ogt.ykcj.domain.zs.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.hyt.it.ogt.ykcj.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 创建证书
 * @Author: STARF
 * @CreateDate: 2022/06/21 09:56
 **/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value = "创建证书", description = "创建证书")
public class ZsInfoDTO extends BaseEntity {

    @ApiModelProperty(value = "id")
    private String id;

    @ApiModelProperty(value = "机构id")
    private String officeId;

    @ApiModelProperty(value = "部门ID")
    private String deptId;

    @ApiModelProperty(value = "模板id")
    private String certificateTemplateid;

    @ApiModelProperty(value = "模板code")
    private String certificateTemplateCode;

    @ApiModelProperty(value = "模板名称")
    private String certificateTemplateName;

    @ApiModelProperty(value = "证书类型")
    private String certificateType;

    @ApiModelProperty(value = "证书名称")
    private String certificateName;

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @ApiModelProperty(value = "证书数据来源：1-导入证书人员数据，2-关联成绩数据")
    private Integer certificateDataSource;

    @ApiModelProperty(value = "证书数据来源描述")
    private String certificateDataSourceDesc;

    @ApiModelProperty(value = "考试id，每一场考试只能关联一份证书")
    private String examId;

    @ApiModelProperty(value = "考试名称")
    private String examName;

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @ApiModelProperty(value = "证书授予对象：1-全部已归档考生，2-考试结果")
    private Integer certificateGrantObject;

    @ApiModelProperty(value = "证书授予对象描述")
    private String certificateGrantObjectDesc;

    @ApiModelProperty(value = "考试结果(多选用逗号隔开)，条件来源于成绩分数线的设置id")
    private String examScoreLines;

    @ApiModelProperty(value = "考试结果(多选用逗号隔开)，条件来源于成绩分数线的设置id对应的名字")
    private String examScoreLinesName;

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @ApiModelProperty(value = "证书有效期类型：-1-永久, 1-半年，2-一年，3-两年，4-三年，5-五年，6-十年")
    private Integer certificateValidityType;

    @ApiModelProperty(value = "证书有效期类型描述")
    private String certificateValidityTypeDesc;

    @ApiModelProperty(value = "证书专业")
    private String certificateSubject;

    @ApiModelProperty(value = "证书专业名称")
    private String certificateSubjectDesc;

    @ApiModelProperty(value = "证书级别名称")
    private String certificateLevelDesc;

    @ApiModelProperty(value = "证书级别")
    private String certificateLevel;

    @ApiModelProperty(value = "证书状态：1-已发布，2-未发布")
    private Integer certificateStatus;

    @ApiModelProperty(value = "证书状态描述")
    private String certificateStatusDesc;

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @ApiModelProperty(value = "证书发布设置：1-与成绩发布关联，2-单独发布证书")
    private Integer certificatePublishType;

}
